package com.yuw.filedemo;

import java.io.File;
import java.io.FilenameFilter;
import java.io.IOException;

public class TestDriver {
    public static void main(String[] args) {
        System.out.println("======================");
        test01();
        System.out.println("======================");
        test011();

    }

    /**
     * 文件工具类——file
     */
    public static void test011() {
        // 输入一个目录，把目录下所有的文件打印出来
        File file = new File("D:/temp/filesdemo");
        // 获取该目录下的所有的文件信息
        File[] subFilses = file.listFiles(new FilenameFilter() {

            // dir 当前遍历的文件所在的目录名
            // name 当前遍历的文件名
            @Override
            public boolean accept(File dir, String name) {
                // /业务逻辑处理相关
                //System.out.println("--------" + dir + ";-------" + name);

                return name.contains("temp");
            }
        });
        for (File subF : subFilses) {
            System.out.println((subF.isDirectory() ? "目录：" : "文件：")
                    + "--" + subF.getAbsolutePath());
        }
    }

    /**
     * 文件工具类——file
     */
    public static void test01() {
        File file = new File("D:/temp/filesdemo/ttt/ttt/e/er/e/r/er.txt");
        System.out.println("目录or文件？" + file.isDirectory());
        System.out.println("getAbsolutePath:" + file.getAbsolutePath());
        System.out.println("getName:" + file.getName());
        // 如果文件对象不存在
        if (!file.exists()) {
            if (file.isDirectory()) {
                // 如果是目录，则创建目录
                file.mkdirs();
            } else {
                // 如果是文件，则创建文件
                try {
                    file.createNewFile();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }

    }
}
